草庐IT

python - SQLAlchemy:具有多个 where 条件的 SQL 表达式

全部标签

ruby-on-rails - ruby 正则表达式错误 : incompatible encoding regexp match (ASCII-8BIT regexp with UTF-8 string)

我遇到了两个错误,都与编码有关并且都相关。我在启动WEBrick时遇到的第一个错误(技术上是警告):/Users/USERNAME/example/config/initializers/bb-ruby.rb:54:warning:invalidUnicodeProperty\P:/\:\-?\P/它所指的行是:/\:\-?\P/,这只是一些正则表达式,最终是这个block的一部分:@@tags['Razzing']=[/\:\-?\P/,'','Razzing',':P',:razzing]然后,我在解析一些字符串时也得到了以下错误(大概是由于同一行)...Encoding::Com

ruby - 使用 YARD 将参数标记为可选(或具有默认值)

我正在使用YARD来记录我的代码。我有一个方法,它有一个带有默认值的可选参数。如何标记该参数是可选的并具有默认值?例子:#Squaresanumber##@paramthenumbertosquaredefsquare_a_number(number=2)number*numberend 最佳答案 YARD现在自动支持参数默认值。YARD根据方法定义自动计算出默认值。瑞典语!例如,以下代码文档将生成后续的YARD文档:代码文档#Squaresanumber.##@paramnumber[Integer]Thenumbertosqua

ruby - 如何使用 webmock 正则表达式匹配器?

如何匹配像这样的URL:http://www.example.com/foo/:id/barhttp://www.example.com/foo/1/barhttp://www.example.com/foo/999/barstub_request(:post,"www.example.com") 最佳答案 您可以使用%r{}而不是//作为Ruby中的正则表达式,以避免必须转义URL中的正斜杠。例如:stub_request(:post,%r{\Ahttp://www.example.com/foo/\d+/bar\z})

ruby - 如何使用 Ruby 用一个换行符替换一行中的多个换行符

我有一个用ruby​​编写的脚本。我需要删除任何重复的换行符(例如)\n\n\n到\n我目前的尝试使用成功了(或者更确切地说没有成功)str.gsub!(/\n\n/,"\n")这对我的输出没有任何影响。我做错了什么? 最佳答案 这对我有用:#!/usr/bin/ruby$s="foo\n\n\nbar\nbaz\n\n\nquux";puts$s$s.gsub!(/[\n]+/,"\n");puts$s 关于ruby-如何使用Ruby用一个换行符替换一行中的多个换行符,我们在Stack

ruby - 使用分组时如何使用 gsub 在 Ruby 正则表达式 (regex) 中反向引用?

我想修补一些从网页中提取的文本数据。示例:t="Firstsentence.Secondsentence.Thirdsentence."第二句末尾点后没有空格。这表明第3句话在原始文档中位于单独的一行(在br标记之后)。我想使用此正则表达式将“\n”字符插入适当的位置并修补我的文本。我的正则表达式:t2=t.gsub(/([.\!?])([A-Z1-9])/,$1+"\n"+$2)但不幸的是它不起作用:“NoMethodError:undefinedmethod‘+’fornil:NilClass”如何正确反向引用匹配的组?在MicrosoftWord中非常简单,我只需使用\1和\2符

ruby - 将具有十六进制 ASCII 代码的字符串转换为字符

我有一个包含ASCII字符的十六进制代码值的字符串,例如“666f6f626172”。我想把它转换成对应的字符串("foobar")。这是有效但丑陋的:"666f6f626172".scan(/../).map(&:hex).map(&:chr).join#=>"foobar"有没有更好(更简洁)的方式?unpack能以某种方式提供帮助吗? 最佳答案 您可以使用Array#pack:["666f6f626172"].pack('H*')#=>"foobar"H是十六进制字符串的指令(高半字节在前)。

ruby-on-rails - 简单的正则表达式——用空格替换下划线

嘿,我正在编写我的第一个Rails应用程序,我正在尝试用空格替换传入ID名称中的下划线,如下所示:之前:test_string之后:测试字符串我该怎么做?对不起,如果这是一个有点愚蠢的问题,我对正则表达式不是很熟悉...... 最佳答案 str.gsub!(/_/,'')gsub代表“全局替换”,感叹号表示它将更改字符串本身,而不仅仅是返回替换后的字符串。您也可以使用String#tr!在没有正则表达式的情况下执行此操作:str.tr!('_','') 关于ruby-on-rails-简

ruby - 如何从字符串正则表达式 ruby​​ 中获取所有数字

如何在ruby​​中使用正则表达式从诸如“Lorem123ipsum456879”=>“123456879”这样的句子字符串中获取所有数字? 最佳答案 只需替换所有其他内容即可。result=subject.gsub(/[^\d]/,'') 关于ruby-如何从字符串正则表达式ruby​​中获取所有数字,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/8019702/

用于匹配 url 的 Ruby 正则表达式

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicates:RegextomatchURLregextoremovethewebpagepartofaurlinruby我正在寻找一个正则表达式来解析文件中的所有url。我尝试了谷歌搜索后得到的许多正则表达式,但在一种或另一种情况下都失败了。我的想法是写一个在开始时检查http或https的存在,它会匹配所有内容,直到它看到一个空格。有什么想法吗?注意:我不需要解析url,但需要从文件中删除所有url,或者至少使其不可读。

Ruby:条件矩阵?有多个条件的情况?

在ruby​​中,我想知道是否有办法执行以下操作:我基本上有一个包含四种可能结果的矩阵:AisTrue,BisTrueAisTrue,BisFalseAisFalse,BisTrueAisFalse,BisFalse我想用尽可能干净的“ruby方式”为此编写一个测试。我希望做一些类似的事情case[A,B]whenA&&Bthen...whenA&&!Bthen...when!A&&Bthen...when!A&&!Bthen...end...但这不起作用。那么,处理这种情况的最佳方法是什么? 最佳答案 bool案例(在case中没